Hardware & Embedded: Eliseo Campos
Hardware: Surender Singh
Embedded & Algorithm: Me
The NATCAR project consisted of programing a NXP kl25z micro-controller so it could control a car on two different track types. One car was 1/18th size with differential motors and another was 1/10th with a ball differential.
We programing a NXP micro-controller to trigger and capture ADC conversions on two 128 pixel line scan cameras using a periodic timer, and used PWM signals control two motors and a servo. The algorithm took the slopes at each pixel, then using a moving average threshold we isolated peak slope locations (i.e. the tape edges) and put these indexes through a PD controller that controlled the servo and motors.
The NXP track had two black lines to follow and allowed a commercial motor control board. The NATCAR track had one white line to follow. It also required a custom PCB for motor control and we used a hBridge circuit as our design.
Videos on the right show the car during test sessions. On the single line track the car reached an average of 8.4 feet per second.